package com.md.api.dao;

import com.md.api.entity.PdAttribute;
import com.md.api.entity.PdSku;
import com.md.api.entity.PdSpu;
import com.md.api.entity.PdSpuAttributeRelation;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Repository;

import java.util.List;
@Repository
public interface PdSpuMapper {
    int deleteByPrimaryKey(Long id);

    int newSpu(PdSpu record);

    PdSpu selectByPrimaryKey(Long id);

    List<PdSpu> selectAll();

    int updateSpu(PdSpu record);
    int downOrUp(PdSpu record);
    PdSku skuDetail(@Param("spuId") String spuId,@Param("attributeValueIds") List<String> attributeValueIds);

    List<PdSpu> list(@Param("keyword") String keyword,@Param("saleStatus")Integer saleStatus);

    PdSpu getBaseInfo(@Param("spuId") String spuId);

    List<PdSpuAttributeRelation> getPublicAttr(@Param("spuId") String spuId);
    List<PdAttribute> getPrivateAttr(@Param("spuId") String spuId);

    List<PdSpu> recommend();

    Integer listingSku(@Param("spuId")String spuId);

    void deleteSpu(@Param("spuId")String spuId);
}